package com.united.ucts.common.exception;

import com.united.frame.common.module.result.IResultCode;

/**
 * 自定义的文件上传管理业务逻辑异常信息类
 *
 * @author Hudan
 * @version 1.0
 * @filename UploadException.java
 * @copyright <a href="www.united.cn">www.united.cn</a>
 * @date 2019-10-26
 */
public class UploadException extends UctsException {

    /**
     * 具体异常类型、枚举对象
     */
    private IResultCode errorCode;

    /**
     * 构造方法,抛出指定的异常对象
     *
     * @param resultCode 自定义的异常枚举对象
     */
    public UploadException(IResultCode resultCode) {
        super(resultCode.getMessage());
        this.code = resultCode.getCode();
    }

    /**
     * 构造方法,抛出指定的异常对象
     *
     * @param message 指定的异常描述信息
     */
    public UploadException(String message) {
        super(message);
    }

    /**
     * 构造方法,抛出指定的异常对象
     *
     * @param cause 自定义的异常对象
     */
    public UploadException(Throwable cause) {
        super(cause);
    }

    /**
     * 构造方法,抛出指定的异常对象
     *
     * @param message 异常描述信息
     * @param cause   自定义的异常对象
     */
    public UploadException(String message, Throwable cause) {
        super(message, cause);
    }

    /**
     * 获取自定义的异常枚举对象
     *
     * @return 自定义的异常枚举对象
     */
    public IResultCode getErrorCode() {
        return errorCode;
    }
}